class Solution {
public:
    string predictPartyVictory(string senate) 
    {
        queue<size_t> radiant, dire;
        int numOfSente = senate.size();
        for (size_t i = 0; i < numOfSente; i++)
        {
            if (senate[i] == 'R')
            {
                radiant.push(i);
            }
            else
            {
                dire.push(i);
            }
        }

        while (!radiant.empty() && !dire.empty())
        {
            if (radiant.front() < dire.front())
            {
                radiant.push(radiant.front() + numOfSente);
            }
            else
            {
                dire.push(dire.front() + numOfSente);
            }
            radiant.pop();
            dire.pop();
        }

        return radiant.empty() ? "Dire" : "Radiant";

    }
};